/*
 * LoginFrame.java
 *
 * Created on Jan 10, 2012, 3:12:08 PM
 */
package kernel_gui.gui.generic.graphic;

import java.awt.AWTError;
import java.awt.Point;
import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import kernel_gui.gui.generic.BackGroundPanel;
import kernel_gui.gui.generic.MillionaireFrame;

/**
 *
 * @author Yoyo
 */
@SuppressWarnings("rawtypes")
public abstract class ControlMovies extends MillionaireFrame {

    /**
	 * 
	 */
	private static final long serialVersionUID = 5087131880341434692L;
	/** Creates new form LoginFrame */
    public ControlMovies() {
    	super(true);
        initComponents();
    }

	@SuppressWarnings("unchecked")
	private void initComponents() {

        LayeredPane = new javax.swing.JLayeredPane();
        MainPanel = new javax.swing.JPanel();
        ActionsPanel = new javax.swing.JPanel();
        DeleteButton = new javax.swing.JButton();
        UpdateButton = new javax.swing.JButton();
        InsertButton = new javax.swing.JButton();
        SearchPanel = new javax.swing.JPanel();
        SearchLeftPanel = new javax.swing.JPanel();
        PartOfTitleLabel = new javax.swing.JLabel();
        PartOfTitleTextField = new javax.swing.JTextField();
        YearFromLabel = new javax.swing.JLabel();
        YearFromTextField = new javax.swing.JTextField();
        YearToLabel = new javax.swing.JLabel();
        YearToTextField = new javax.swing.JTextField();
        RankFromLabel = new javax.swing.JLabel();
        RankFromTextField = new javax.swing.JTextField();
        RankToLabel = new javax.swing.JLabel();
        RankToTextField = new javax.swing.JTextField();
        SearchRightPanel = new javax.swing.JPanel();
        ActorNameTextField = new javax.swing.JTextField();
        ActorButton = new javax.swing.JButton();
        DirectorNameTextField = new javax.swing.JTextField();
        DirectorButton = new javax.swing.JButton();
        CountryNameTextField = new javax.swing.JTextField();
        CountryButton = new javax.swing.JButton();
        GenresScrollPane = new javax.swing.JScrollPane();
        GenresList = new javax.swing.JList();
        SearchButton = new javax.swing.JButton();
        ClearButton = new javax.swing.JButton();
        GenresLabel = new javax.swing.JLabel();
        ResultPanel = new javax.swing.JPanel();
        PreviousButton = new javax.swing.JButton();
        NumOfRecordsHeadLabel = new javax.swing.JLabel();
        NumOfRecordsInPageComboBox = new javax.swing.JComboBox();
        NumOfRecordsTailLabel = new javax.swing.JLabel();
        ResultScrollPane = new javax.swing.JScrollPane();
        ResultTable = new javax.swing.JTable();
        NextButton = new javax.swing.JButton();
        ResultStatPanel = new javax.swing.JPanel();
        FoundLabel = new javax.swing.JLabel();
        FoundNumberLabel = new javax.swing.JLabel();
        RecordsLabel = new javax.swing.JLabel();
        PageLabel = new javax.swing.JLabel();
        PageNumberLabel = new javax.swing.JLabel();
        OfLabel = new javax.swing.JLabel();
        TotalPageNumberLabel = new javax.swing.JLabel();
        BackButton = new javax.swing.JButton();
        ConnectionsPanel = new javax.swing.JPanel();
        ShowMovieActorsConButton = new javax.swing.JButton();
        ShowMovieDirectorsConButton = new javax.swing.JButton();
        ShowMovieGenresConButton = new javax.swing.JButton();
        ShowMovieCountriesConButton = new javax.swing.JButton();
        LoadingPanel = new javax.swing.JPanel();
        SpinningDollarLabel = new javax.swing.JLabel();
        TopMessageLabel = new javax.swing.JLabel();
        CancelButton = new javax.swing.JButton();

        /* My init code */
    	int frameWidth = 680;
    	int frameHeight = 640;
    	this.setIconImage(new javax.swing.ImageIcon("images/Green-Dollar-icon.png").getImage());
       	this.setTitle("Conrol Panel - Movies");
    	LayeredPane.setOpaque(false);
    	LoadingPanel.setVisible(false);
    	LoadingPanel.setOpaque(false);
    	setResizable(false);
    	try{
    		Toolkit tk = Toolkit.getDefaultToolkit();
    		int framePosWidth = tk.getScreenSize().width / 2 - frameWidth / 2;
    		int framePosHeight = tk.getScreenSize().height / 2 - frameHeight / 2;
    		Point p = new Point(framePosWidth, framePosHeight);
    		this.setLocation(p);
    	}catch(AWTError e){
    		/*Nothing to do*/
    	}
    	BGPanel = new BackGroundPanel(frameWidth, frameHeight);
        MainPanel = new BackGroundPanel(frameWidth, frameHeight);
    	SpinningDollarLabel.setIcon(new javax.swing.ImageIcon(
    			"images/dollar-spinning.gif")); // NOI18N
    	/* end */


        BGPanel.setBackground(new java.awt.Color(102, 255, 102));
        BGPanel.setOpaque(false);
        BGPanel.setPreferredSize(new java.awt.Dimension(680, 660));

        LayeredPane.setPreferredSize(null);

        MainPanel.setOpaque(false);

        ActionsPanel.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 0, 0)));
        ActionsPanel.setOpaque(false);

        DeleteButton.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        DeleteButton.setText("Delete");
        DeleteButton.setOpaque(false);
        DeleteButton.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                DeleteButtonActionPerformed(evt);
            }
        });

        UpdateButton.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        UpdateButton.setText("Update");
        UpdateButton.setOpaque(false);
        UpdateButton.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                UpdateButtonActionPerformed(evt);
            }
        });

        InsertButton.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        InsertButton.setText("New Record");
        InsertButton.setOpaque(false);
        InsertButton.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                InsertButtonActionPerformed(evt);
            }
        });

        javax.swing.GroupLayout ActionsPanelLayout = new javax.swing.GroupLayout(ActionsPanel);
        ActionsPanel.setLayout(ActionsPanelLayout);
        ActionsPanelLayout.setHorizontalGroup(
            ActionsPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(ActionsPanelLayout.createSequentialGroup()
                .addContainerGap()
                .addGroup(ActionsPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(DeleteButton, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, 117, Short.MAX_VALUE)
                    .addComponent(InsertButton, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addComponent(UpdateButton, javax.swing.GroupLayout.DEFAULT_SIZE, 117, Short.MAX_VALUE))
                .addContainerGap())
        );
        ActionsPanelLayout.setVerticalGroup(
            ActionsPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(ActionsPanelLayout.createSequentialGroup()
                .addContainerGap()
                .addComponent(DeleteButton, javax.swing.GroupLayout.PREFERRED_SIZE, 30, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(UpdateButton, javax.swing.GroupLayout.PREFERRED_SIZE, 30, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(InsertButton, javax.swing.GroupLayout.DEFAULT_SIZE, 31, Short.MAX_VALUE)
                .addContainerGap())
        );

        SearchPanel.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 0, 0)));
        SearchPanel.setOpaque(false);

        SearchLeftPanel.setOpaque(false);

        PartOfTitleLabel.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        PartOfTitleLabel.setText("Part of Title:");

        PartOfTitleTextField.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N  


        YearFromLabel.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        YearFromLabel.setText("Year From:");

        YearFromTextField.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N


        YearToLabel.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        YearToLabel.setText("Year To:");

        YearToTextField.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N


        RankFromLabel.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        RankFromLabel.setText("Rank From:");

        RankFromTextField.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N


        RankToLabel.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        RankToLabel.setText("Rank To:");

        RankToTextField.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N


        javax.swing.GroupLayout SearchLeftPanelLayout = new javax.swing.GroupLayout(SearchLeftPanel);
        SearchLeftPanel.setLayout(SearchLeftPanelLayout);
        SearchLeftPanelLayout.setHorizontalGroup(
            SearchLeftPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(SearchLeftPanelLayout.createSequentialGroup()
                .addContainerGap()
                .addGroup(SearchLeftPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(PartOfTitleLabel)
                    .addComponent(YearFromLabel)
                    .addComponent(YearToLabel)
                    .addComponent(RankFromLabel)
                    .addComponent(RankToLabel))
                .addGap(18, 18, 18)
                .addGroup(SearchLeftPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(PartOfTitleTextField, javax.swing.GroupLayout.PREFERRED_SIZE, 100, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(YearFromTextField, javax.swing.GroupLayout.PREFERRED_SIZE, 100, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(YearToTextField, javax.swing.GroupLayout.PREFERRED_SIZE, 100, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(RankToTextField, javax.swing.GroupLayout.PREFERRED_SIZE, 100, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(RankFromTextField, javax.swing.GroupLayout.PREFERRED_SIZE, 100, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
        );
        SearchLeftPanelLayout.setVerticalGroup(
            SearchLeftPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(SearchLeftPanelLayout.createSequentialGroup()
                .addContainerGap()
                .addGroup(SearchLeftPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(PartOfTitleLabel)
                    .addComponent(PartOfTitleTextField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                .addGroup(SearchLeftPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(YearFromLabel)
                    .addComponent(YearFromTextField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addGap(12, 12, 12)
                .addGroup(SearchLeftPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(YearToLabel)
                    .addComponent(YearToTextField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                .addGroup(SearchLeftPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(RankFromLabel)
                    .addComponent(RankFromTextField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addGap(12, 12, 12)
                .addGroup(SearchLeftPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(RankToTextField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(RankToLabel))
                .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
        );

        SearchRightPanel.setOpaque(false);

        ActorNameTextField.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
        ActorNameTextField.setEditable(false);
        ActorNameTextField.setOpaque(false);

        ActorButton.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        ActorButton.setText("Actor");
        ActorButton.setOpaque(false);
        ActorButton.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                ActorButtonActionPerformed(evt);
            }
        });

        DirectorNameTextField.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N  
		DirectorNameTextField.setEditable(false);
		DirectorNameTextField.setOpaque(false);

        DirectorButton.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        DirectorButton.setText("Director");
        DirectorButton.setOpaque(false);
        DirectorButton.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                DirectorButtonActionPerformed(evt);
            }
        });

        CountryNameTextField.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N  
		CountryNameTextField.setEditable(false);
		CountryNameTextField.setOpaque(false);

        CountryButton.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        CountryButton.setText("Country");
        CountryButton.setOpaque(false);
        CountryButton.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                CountryButtonActionPerformed(evt);
            }
        });

        GenresScrollPane.setOpaque(false);

        GenresScrollPane.setViewportView(GenresList);

        SearchButton.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        SearchButton.setText("SEARCH!");
        SearchButton.setOpaque(false);
        SearchButton.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                SearchButtonActionPerformed(evt);
            }
        });

        ClearButton.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        ClearButton.setText("Clear");
        ClearButton.setOpaque(false);
        ClearButton.setPreferredSize(new java.awt.Dimension(97, 25));
        ClearButton.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                ClearButtonActionPerformed(evt);
            }
        });

        GenresLabel.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        GenresLabel.setText("Genres:");

        javax.swing.GroupLayout SearchRightPanelLayout = new javax.swing.GroupLayout(SearchRightPanel);
        SearchRightPanel.setLayout(SearchRightPanelLayout);
        SearchRightPanelLayout.setHorizontalGroup(
            SearchRightPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(SearchRightPanelLayout.createSequentialGroup()
                .addContainerGap()
                .addGroup(SearchRightPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                    .addGroup(SearchRightPanelLayout.createSequentialGroup()
                        .addGroup(SearchRightPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                            .addComponent(DirectorButton, javax.swing.GroupLayout.DEFAULT_SIZE, 108, Short.MAX_VALUE)
                            .addComponent(CountryButton, javax.swing.GroupLayout.DEFAULT_SIZE, 108, Short.MAX_VALUE)
                            .addComponent(ActorButton, javax.swing.GroupLayout.DEFAULT_SIZE, 108, Short.MAX_VALUE))
                        .addGap(18, 18, 18)
                        .addGroup(SearchRightPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(CountryNameTextField, javax.swing.GroupLayout.DEFAULT_SIZE, 316, Short.MAX_VALUE)
                            .addComponent(DirectorNameTextField, javax.swing.GroupLayout.DEFAULT_SIZE, 316, Short.MAX_VALUE)
                            .addComponent(ActorNameTextField, javax.swing.GroupLayout.DEFAULT_SIZE, 316, Short.MAX_VALUE)))
                    .addGroup(javax.swing.GroupLayout.Alignment.LEADING, SearchRightPanelLayout.createSequentialGroup()
                        .addGap(71, 71, 71)
                        .addComponent(GenresScrollPane, javax.swing.GroupLayout.PREFERRED_SIZE, 150, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addGap(18, 18, 18)
                        .addComponent(ClearButton, javax.swing.GroupLayout.PREFERRED_SIZE, 96, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                        .addComponent(SearchButton)))
                .addContainerGap())
            .addGroup(SearchRightPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                .addGroup(SearchRightPanelLayout.createSequentialGroup()
                    .addGap(20, 20, 20)
                    .addComponent(GenresLabel)
                    .addContainerGap(389, Short.MAX_VALUE)))
        );
        SearchRightPanelLayout.setVerticalGroup(
            SearchRightPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, SearchRightPanelLayout.createSequentialGroup()
                .addContainerGap()
                .addGroup(SearchRightPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(ActorButton)
                    .addComponent(ActorNameTextField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                .addGroup(SearchRightPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(DirectorButton)
                    .addComponent(DirectorNameTextField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                .addGroup(SearchRightPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(CountryButton)
                    .addComponent(CountryNameTextField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addGroup(SearchRightPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                    .addGroup(SearchRightPanelLayout.createSequentialGroup()
                        .addGap(6, 6, 6)
                        .addComponent(GenresScrollPane, javax.swing.GroupLayout.DEFAULT_SIZE, 57, Short.MAX_VALUE))
                    .addGroup(javax.swing.GroupLayout.Alignment.LEADING, SearchRightPanelLayout.createSequentialGroup()
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(SearchRightPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(ClearButton, javax.swing.GroupLayout.DEFAULT_SIZE, 57, Short.MAX_VALUE)
                            .addComponent(SearchButton, javax.swing.GroupLayout.DEFAULT_SIZE, 57, Short.MAX_VALUE))))
                .addContainerGap())
            .addGroup(SearchRightPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, SearchRightPanelLayout.createSequentialGroup()
                    .addContainerGap(120, Short.MAX_VALUE)
                    .addComponent(GenresLabel)
                    .addGap(45, 45, 45)))
        );

        javax.swing.GroupLayout SearchPanelLayout = new javax.swing.GroupLayout(SearchPanel);
        SearchPanel.setLayout(SearchPanelLayout);
        SearchPanelLayout.setHorizontalGroup(
            SearchPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(SearchPanelLayout.createSequentialGroup()
                .addContainerGap()
                .addComponent(SearchLeftPanel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(SearchRightPanel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
        );
        SearchPanelLayout.setVerticalGroup(
            SearchPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(SearchPanelLayout.createSequentialGroup()
                .addGroup(SearchPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(SearchLeftPanel, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addComponent(SearchRightPanel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addContainerGap())
        );

        ResultPanel.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 0, 0)));
        ResultPanel.setOpaque(false);

        PreviousButton.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        PreviousButton.setText("<<");
        PreviousButton.setOpaque(false);
        PreviousButton.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                PreviousButtonActionPerformed(evt);
            }
        });

        NumOfRecordsHeadLabel.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        NumOfRecordsHeadLabel.setText("Show");

        NumOfRecordsInPageComboBox.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "5", "10", "25", "50", "100" }));
        NumOfRecordsInPageComboBox.setOpaque(false);
        NumOfRecordsInPageComboBox.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                NumOfRecordsInPageComboBoxActionPerformed(evt);
            }
        });

        NumOfRecordsTailLabel.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        NumOfRecordsTailLabel.setText("Records in page");

        ResultScrollPane.setOpaque(false);

        ResultTable.setAutoCreateRowSorter(true);
        ResultTable.setModel(new javax.swing.table.DefaultTableModel(
            new Object [][] {

            },
            new String [] {
                "Title", "Release Year", "Rank"
            }
        ) {
            /**
			 * 
			 */
			private static final long serialVersionUID = 5308628646482813247L;
			Class[] types = new Class [] {
                java.lang.String.class, java.lang.String.class, java.lang.String.class
            };

            public Class<?> getColumnClass(int columnIndex) {
                return types [columnIndex];
            }
        });
        ResultTable.getTableHeader().setReorderingAllowed(false);
        ResultScrollPane.setViewportView(ResultTable);

        NextButton.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        NextButton.setText(">>");
        NextButton.setOpaque(false);
        NextButton.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                NextButtonActionPerformed(evt);
            }
        });

        javax.swing.GroupLayout ResultPanelLayout = new javax.swing.GroupLayout(ResultPanel);
        ResultPanel.setLayout(ResultPanelLayout);
        ResultPanelLayout.setHorizontalGroup(
            ResultPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, ResultPanelLayout.createSequentialGroup()
                .addContainerGap(188, Short.MAX_VALUE)
                .addComponent(NumOfRecordsHeadLabel)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(NumOfRecordsInPageComboBox, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(NumOfRecordsTailLabel)
                .addGap(91, 91, 91)
                .addComponent(NextButton)
                .addContainerGap())
            .addGroup(ResultPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                .addGroup(ResultPanelLayout.createSequentialGroup()
                    .addContainerGap()
                    .addGroup(ResultPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                        .addGroup(ResultPanelLayout.createSequentialGroup()
                            .addComponent(ResultScrollPane, javax.swing.GroupLayout.DEFAULT_SIZE, 524, Short.MAX_VALUE)
                            .addContainerGap())
                        .addComponent(PreviousButton))))
        );
        ResultPanelLayout.setVerticalGroup(
            ResultPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, ResultPanelLayout.createSequentialGroup()
                .addContainerGap(274, Short.MAX_VALUE)
                .addGroup(ResultPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(NextButton)
                    .addComponent(NumOfRecordsHeadLabel)
                    .addComponent(NumOfRecordsInPageComboBox, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(NumOfRecordsTailLabel))
                .addContainerGap())
            .addGroup(ResultPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, ResultPanelLayout.createSequentialGroup()
                    .addContainerGap()
                    .addComponent(ResultScrollPane, javax.swing.GroupLayout.DEFAULT_SIZE, 254, Short.MAX_VALUE)
                    .addGap(9, 9, 9)
                    .addComponent(PreviousButton)
                    .addContainerGap()))
        );

        ResultStatPanel.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 0, 0)));
        ResultStatPanel.setOpaque(false);

        FoundLabel.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        FoundLabel.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
        FoundLabel.setText("Records Found");

        FoundNumberLabel.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        FoundNumberLabel.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
        FoundNumberLabel.setText("0");

        RecordsLabel.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        RecordsLabel.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);

        PageLabel.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        PageLabel.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
        PageLabel.setText("Showing Page");

        PageNumberLabel.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        PageNumberLabel.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
        PageNumberLabel.setText("123456789");

        OfLabel.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        OfLabel.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
        OfLabel.setText("Of");

        TotalPageNumberLabel.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        TotalPageNumberLabel.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
        TotalPageNumberLabel.setText("123456789");

        javax.swing.GroupLayout ResultStatPanelLayout = new javax.swing.GroupLayout(ResultStatPanel);
        ResultStatPanel.setLayout(ResultStatPanelLayout);
        ResultStatPanelLayout.setHorizontalGroup(
            ResultStatPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(ResultStatPanelLayout.createSequentialGroup()
                .addContainerGap()
                .addGroup(ResultStatPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(FoundLabel, javax.swing.GroupLayout.DEFAULT_SIZE, 117, Short.MAX_VALUE)
                    .addComponent(FoundNumberLabel, javax.swing.GroupLayout.DEFAULT_SIZE, 117, Short.MAX_VALUE)
                    .addComponent(RecordsLabel, javax.swing.GroupLayout.DEFAULT_SIZE, 117, Short.MAX_VALUE)
                    .addComponent(PageLabel, javax.swing.GroupLayout.DEFAULT_SIZE, 117, Short.MAX_VALUE)
                    .addComponent(PageNumberLabel, javax.swing.GroupLayout.DEFAULT_SIZE, 117, Short.MAX_VALUE)
                    .addComponent(OfLabel, javax.swing.GroupLayout.DEFAULT_SIZE, 117, Short.MAX_VALUE)
                    .addComponent(TotalPageNumberLabel, javax.swing.GroupLayout.DEFAULT_SIZE, 117, Short.MAX_VALUE))
                .addContainerGap())
        );
        ResultStatPanelLayout.setVerticalGroup(
            ResultStatPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(ResultStatPanelLayout.createSequentialGroup()
                .addContainerGap()
                .addComponent(FoundLabel)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(FoundNumberLabel)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(RecordsLabel)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(PageLabel)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(PageNumberLabel)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(OfLabel)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(TotalPageNumberLabel)
                .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
        );

        BackButton.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        BackButton.setText("Back");
        BackButton.setOpaque(false);
        BackButton.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                BackButtonActionPerformed(evt);
            }
        });

        ConnectionsPanel.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 0, 0)));
        ConnectionsPanel.setOpaque(false);

        ShowMovieActorsConButton.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        ShowMovieActorsConButton.setText("<html><p align=\"center\">Show Movie's<br>Actors</p></html>");
        ShowMovieActorsConButton.setOpaque(false);
        ShowMovieActorsConButton.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                ShowMovieActorsConButtonActionPerformed(evt);
            }
        });

        ShowMovieDirectorsConButton.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        ShowMovieDirectorsConButton.setText("<html><p align=\"center\">Show Movie's<br>Directors</p></html>");
        ShowMovieDirectorsConButton.setOpaque(false);
        ShowMovieDirectorsConButton.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                ShowMovieDirectorsConButtonActionPerformed(evt);
            }
        });

        ShowMovieGenresConButton.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        ShowMovieGenresConButton.setText("<html><p align=\"center\">Show Movie's<br>Genres</p></html>");
        ShowMovieGenresConButton.setOpaque(false);
        ShowMovieGenresConButton.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                ShowMovieGenresConButtonActionPerformed(evt);
            }
        });

        ShowMovieCountriesConButton.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        ShowMovieCountriesConButton.setText("<html><p align=\"center\">Show Movie's<br>Countries</p></html>");
        ShowMovieCountriesConButton.setOpaque(false);
        ShowMovieCountriesConButton.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                ShowMovieCountriesConButtonActionPerformed(evt);
            }
        });

        javax.swing.GroupLayout ConnectionsPanelLayout = new javax.swing.GroupLayout(ConnectionsPanel);
        ConnectionsPanel.setLayout(ConnectionsPanelLayout);
        ConnectionsPanelLayout.setHorizontalGroup(
            ConnectionsPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(ConnectionsPanelLayout.createSequentialGroup()
                .addContainerGap()
                .addComponent(ShowMovieActorsConButton, javax.swing.GroupLayout.PREFERRED_SIZE, 160, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(18, 18, 18)
                .addComponent(ShowMovieDirectorsConButton, javax.swing.GroupLayout.PREFERRED_SIZE, 160, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(18, 18, 18)
                .addComponent(ShowMovieGenresConButton, javax.swing.GroupLayout.PREFERRED_SIZE, 160, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(18, 18, 18)
                .addComponent(ShowMovieCountriesConButton, javax.swing.GroupLayout.DEFAULT_SIZE, 139, Short.MAX_VALUE)
                .addContainerGap())
        );
        ConnectionsPanelLayout.setVerticalGroup(
            ConnectionsPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, ConnectionsPanelLayout.createSequentialGroup()
                .addContainerGap()
                .addGroup(ConnectionsPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(ShowMovieActorsConButton)
                    .addComponent(ShowMovieDirectorsConButton)
                    .addComponent(ShowMovieGenresConButton)
                    .addComponent(ShowMovieCountriesConButton))
                .addContainerGap())
        );

        javax.swing.GroupLayout MainPanelLayout = new javax.swing.GroupLayout(MainPanel);
        MainPanel.setLayout(MainPanelLayout);
        MainPanelLayout.setHorizontalGroup(
            MainPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, MainPanelLayout.createSequentialGroup()
                .addContainerGap()
                .addGroup(MainPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                    .addComponent(BackButton, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, 695, Short.MAX_VALUE)
                    .addComponent(ConnectionsPanel, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addComponent(SearchPanel, javax.swing.GroupLayout.Alignment.LEADING, 0, 695, Short.MAX_VALUE)
                    .addGroup(javax.swing.GroupLayout.Alignment.LEADING, MainPanelLayout.createSequentialGroup()
                        .addComponent(ResultPanel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addGap(10, 10, 10)
                        .addGroup(MainPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(ActionsPanel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                            .addComponent(ResultStatPanel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))))
                .addGap(41, 41, 41))
        );
        MainPanelLayout.setVerticalGroup(
            MainPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(MainPanelLayout.createSequentialGroup()
                .addContainerGap()
                .addComponent(SearchPanel, javax.swing.GroupLayout.PREFERRED_SIZE, 190, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                .addGroup(MainPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(MainPanelLayout.createSequentialGroup()
                        .addComponent(ResultStatPanel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(ActionsPanel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                    .addComponent(ResultPanel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                .addComponent(ConnectionsPanel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                .addComponent(BackButton)
                .addGap(22, 22, 22))
        );

        MainPanel.setBounds(0, 0, 740, 660);
        

        LoadingPanel.setOpaque(false);
        LoadingPanel.setPreferredSize(new java.awt.Dimension(700, 670));


        TopMessageLabel.setBackground(new java.awt.Color(51, 102, 0));
        TopMessageLabel.setFont(new java.awt.Font("Tahoma", 1, 14));
        TopMessageLabel.setForeground(new java.awt.Color(51, 204, 0));
        TopMessageLabel.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
        TopMessageLabel.setText("Loading Please wait");

        CancelButton.setFont(new java.awt.Font("Tahoma", 1, 14));
        CancelButton.setText("Cancel");
        CancelButton.setOpaque(false);
        CancelButton.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                CancelButtonActionPerformed(evt);
            }
        });

        javax.swing.GroupLayout LoadingPanelLayout = new javax.swing.GroupLayout(LoadingPanel);
        LoadingPanel.setLayout(LoadingPanelLayout);
        LoadingPanelLayout.setHorizontalGroup(
            LoadingPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(LoadingPanelLayout.createSequentialGroup()
                .addGap(294, 294, 294)
                .addGroup(LoadingPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(LoadingPanelLayout.createSequentialGroup()
                        .addGap(16, 16, 16)
                        .addComponent(SpinningDollarLabel)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 19, javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addComponent(TopMessageLabel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addGroup(LoadingPanelLayout.createSequentialGroup()
                        .addGap(27, 27, 27)
                        .addComponent(CancelButton)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 31, javax.swing.GroupLayout.PREFERRED_SIZE)))
                .addGap(341, 341, 341))
        );
        LoadingPanelLayout.setVerticalGroup(
            LoadingPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(LoadingPanelLayout.createSequentialGroup()
                .addGap(239, 239, 239)
                .addComponent(SpinningDollarLabel)
                .addGap(18, 18, 18)
                .addComponent(TopMessageLabel)
                .addGap(34, 34, 34)
                .addComponent(CancelButton)
                .addContainerGap(275, Short.MAX_VALUE))
        );

        LoadingPanel.setBounds(0, 0, 750, 680);
        LayeredPane.add(LoadingPanel, javax.swing.JLayeredPane.DEFAULT_LAYER);
        LayeredPane.add(MainPanel, javax.swing.JLayeredPane.DEFAULT_LAYER);

        javax.swing.GroupLayout BGPanelLayout = new javax.swing.GroupLayout(BGPanel);
        BGPanel.setLayout(BGPanelLayout);
        BGPanelLayout.setHorizontalGroup(
            BGPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 715, Short.MAX_VALUE)
            .addGroup(BGPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                .addComponent(LayeredPane, javax.swing.GroupLayout.DEFAULT_SIZE, 715, Short.MAX_VALUE))
        );
        BGPanelLayout.setVerticalGroup(
            BGPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 648, Short.MAX_VALUE)
            .addGroup(BGPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                .addComponent(LayeredPane, javax.swing.GroupLayout.DEFAULT_SIZE, 648, Short.MAX_VALUE))
        );

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(BGPanel, javax.swing.GroupLayout.DEFAULT_SIZE, 715, Short.MAX_VALUE)
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(BGPanel, javax.swing.GroupLayout.DEFAULT_SIZE, 648, Short.MAX_VALUE)
        );

        pack();
    }// </editor-fold>

   
   
    protected abstract void PreviousButtonActionPerformed(ActionEvent evt);

	protected abstract void NextButtonActionPerformed(ActionEvent evt);

	protected abstract void NumOfRecordsInPageComboBoxActionPerformed(ActionEvent evt);

	protected abstract void SearchButtonActionPerformed(java.awt.event.ActionEvent evt);                                            

    protected abstract void ActorButtonActionPerformed(java.awt.event.ActionEvent evt);

    protected abstract void CountryButtonActionPerformed(java.awt.event.ActionEvent evt);

    protected abstract void DirectorButtonActionPerformed(java.awt.event.ActionEvent evt);

    protected abstract void ClearButtonActionPerformed(java.awt.event.ActionEvent evt);

    protected abstract void DeleteButtonActionPerformed(java.awt.event.ActionEvent evt);

    protected abstract void UpdateButtonActionPerformed(java.awt.event.ActionEvent evt);

    protected abstract void InsertButtonActionPerformed(java.awt.event.ActionEvent evt);

    protected abstract void ShowMovieActorsConButtonActionPerformed(java.awt.event.ActionEvent evt);

    protected abstract void ShowMovieDirectorsConButtonActionPerformed(java.awt.event.ActionEvent evt);

    protected abstract void ShowMovieGenresConButtonActionPerformed(java.awt.event.ActionEvent evt);

    protected abstract void ShowMovieCountriesConButtonActionPerformed(java.awt.event.ActionEvent evt);

    protected abstract void BackButtonActionPerformed(java.awt.event.ActionEvent evt);

    protected javax.swing.JPanel ActionsPanel;
    protected javax.swing.JButton ActorButton;
    protected javax.swing.JTextField ActorNameTextField;
    protected javax.swing.JPanel BGPanel;
    protected javax.swing.JButton BackButton;
    protected javax.swing.JButton ClearButton;
    protected javax.swing.JPanel ConnectionsPanel;
    protected javax.swing.JButton CountryButton;
    protected javax.swing.JTextField CountryNameTextField;
    protected javax.swing.JButton DeleteButton;
    protected javax.swing.JButton DirectorButton;
    protected javax.swing.JTextField DirectorNameTextField;
    protected javax.swing.JLabel FoundLabel;
    protected javax.swing.JLabel FoundNumberLabel;
    protected javax.swing.JLabel GenresLabel;
	protected javax.swing.JList GenresList;
    protected javax.swing.JScrollPane GenresScrollPane;
    protected javax.swing.JButton InsertButton;
    protected javax.swing.JLayeredPane LayeredPane;
    protected javax.swing.JButton NextButton;
    protected javax.swing.JLabel NumOfRecordsHeadLabel;
	protected javax.swing.JComboBox NumOfRecordsInPageComboBox;
    protected javax.swing.JLabel NumOfRecordsTailLabel;
    protected javax.swing.JLabel OfLabel;
    protected javax.swing.JLabel PageLabel;
    protected javax.swing.JLabel PageNumberLabel;
    protected javax.swing.JLabel PartOfTitleLabel;
    protected javax.swing.JTextField PartOfTitleTextField;
    protected javax.swing.JButton PreviousButton;
    protected javax.swing.JLabel RankFromLabel;
    protected javax.swing.JTextField RankFromTextField;
    protected javax.swing.JLabel RankToLabel;
    protected javax.swing.JTextField RankToTextField;
    protected javax.swing.JLabel RecordsLabel;
    protected javax.swing.JPanel ResultPanel;
    protected javax.swing.JScrollPane ResultScrollPane;
    protected javax.swing.JPanel ResultStatPanel;
    protected javax.swing.JTable ResultTable;
    protected javax.swing.JButton SearchButton;
    protected javax.swing.JPanel SearchLeftPanel;
    protected javax.swing.JPanel SearchPanel;
    protected javax.swing.JPanel SearchRightPanel;
    protected javax.swing.JButton ShowMovieActorsConButton;
    protected javax.swing.JButton ShowMovieCountriesConButton;
    protected javax.swing.JButton ShowMovieDirectorsConButton;
    protected javax.swing.JButton ShowMovieGenresConButton;
    protected javax.swing.JLabel SpinningDollarLabel;
    protected javax.swing.JLabel TopMessageLabel;
    protected javax.swing.JLabel TotalPageNumberLabel;
    protected javax.swing.JButton UpdateButton;
    protected javax.swing.JLabel YearFromLabel;
    protected javax.swing.JTextField YearFromTextField;
    protected javax.swing.JLabel YearToLabel;
    protected javax.swing.JTextField YearToTextField;
}
